package webservice;



import java.sql.SQLException;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;

import javax.jws.WebMethod;
import javax.jws.WebService;

import logica.FabricaLogicaCentral;
import logica.IControladorCentral;
import entidades.*;
//import entidades.Usuario;

@WebService(portName = "IWebServiceCentralPort", serviceName = "IWebServiceCentralService", 
	targetNamespace = "http://webservice/", 
	endpointInterface = "webservice.IWebServiceCentral")
public class WebServiceCentral implements IWebServiceCentral{
	
	
	public int altaUsuario(Usuario u) throws SQLException {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.altaUsuario(u);
	}
	
	
	public Usuario  buscarUsuarioLogueo(Usuario usu){
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.buscarUsuarioLogueo(usu);
	}

	
	public Empresa buscarEmpresaLogueo(Empresa emp) {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.buscarEmpresaLogueo(emp);
	}
	
	public int altaReservaIndependiente(ReservaIndependiente res) throws SQLException{
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.altaReservaIndependiente(res);
	}
	
	public int altaEmpresa(Empresa emp) throws SQLException{
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.altaEmpresa(emp);
		
	}
	
	public int altaCancha(Cancha can) throws SQLException{
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.altaCancha(can);
	}


	@Override
	public List<Cancha> listarCanchasHabilitadasXEmp(Empresa emp) {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.listarCanchasHabilitadasXEmp(emp);
	}


	@Override
	public List<Usuario> ListarUsuHab_NoPenalizado() {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.ListarUsuHab_NoPenalizado();
	}


	@Override
	public List<DiasSemana> listarFechasDisponibles(Cancha canchaSeleccionada,
			long lunes, long domingo) {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.listarFechasDisponibles(canchaSeleccionada, lunes, domingo);
	}


	@Override
	public int actualizarEstadoReservaIndependiente(ReservaIndependiente res,
			String estado) {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.actualizarEstadoReservaIndependiente(res, estado);
	}


	@Override
	public List<ReservaIndependiente> ListarResIndVigXEmpresa(Empresa emp) {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		return i.ListarResIndVigXEmpresa(emp);
	}


	@Override
	public void cerrarSesion() {
		IControladorCentral i = FabricaLogicaCentral.getIControladorCentral();
		i.cerrarSesion();
	}
	
	
	}
	
	
	
	
	
